/**
 * 杀掉服务
 * @param ip 服务器ip
 * @param user  用户名
 * @param projectName 项目名称
 * @param type 类型
 * @return
 */
void  call(String ip , String projectName, String type ) {

    switch (type){
        default :
            withCredentials([sshUserPrivateKey(
                    credentialsId: 'ssh_key',  // 凭证 ID
                    keyFileVariable: 'SSH_KEY',
                    usernameVariable: 'USER'
            )]) {
                String  PID=  ssh.getPid(ip,projectName)
                print("查找到的PID:"+PID)
                if (util.strIsBlack(PID)) {
                    print("警告：未找到项目 [${projectName}] 的进程，无需终止")

                }else{
                    print("正在停止项目 [${projectName}] 的进程...")
                    ssh.sshVoid(ip,"  kill  ${PID}")

                }

                println("pid:${PID}")
                for (int i = 1; i <= 60; i++) {
                     PID=  ssh.getPid(ip,projectName)
                  if( util.strIsBlack(PID)){
                     println("${projectName}服务已经杀死")
                  return
                  }else{
                      println("${projectName}服务存活  pid:${PID}")
                  }
//                 睡眠1秒
                sleep(1)
                }
                def choice  = input(
                        message: '是否强制杀死服务',
                        parameters: [
                                choice(name: 'ACTION',
                                        choices: ['强制杀死服务', '终止流程'],
                                        description: '请选择要执行的操作')
                        ],
                        submitter: 'admin,developers',  // 允许提交的用户/角色
                        ok: '确认'  // 按钮文本
                )
                if ("强制杀死服务".equals(choice)) {
                    try {
                        ssh.sshVoid(ip,"  kill -9 ${PID}")
                    }catch (Exception e){
                        println("${projectName}服务已经杀死")
                    }
                }else{
                    error "终止流程"
                }
            }
    }


}



